package com.zc.web.domain;

import java.time.LocalDate;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.zc.common.annotation.Excel;
import com.zc.common.core.domain.BaseEntity;

/**
 * 用户管理对象 wx_user
 * 
 * @author zc
 * @date 2025-09-28
 */


@Data
@TableName("wx_user")
public class User extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 名称 */
    @Excel(name = "名称")
    private String name;

    @Excel(name = "昵称")
    private String nickName;

    /** 手机号 */
    @Excel(name = "手机号")
    private String phone;

    /** 头像 */
    @Excel(name = "头像")
    private String avatar;

    @Excel(name = "出生日期")
    private LocalDate birthDate;

    @Excel(name = "期望寿命")
    private Integer expectedLifespan;

    /** OpenID */
    @Excel(name = "OpenID")
    private String openId;

    /** 性别(0:男，1:女) */
    @Excel(name = "性别(0:男，1:女)")
    private Integer gender;

    /** 城市 */
    @Excel(name = "城市")
    private String city;

    /** 省份 */
    @Excel(name = "省份")
    private String province;

    /** 国家 */
    @Excel(name = "国家")
    private String country;

    /** 用户状态：1-正常，0-禁用 */
    @Excel(name = "用户状态：1-正常，0-禁用")
    private Integer status;

    /** 注册时间 */
//    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "注册时间" )
    private LocalDateTime registerTime;

    /** 最后登录时间 */
//    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后登录时间")
    private LocalDateTime lastLoginTime;

    /** 登录次数 */
    @Excel(name = "登录次数")
    private Integer loginCount;

    @Excel(name = "当前连击数")
    private Integer currentStreak;

    @Excel(name = "最大连击数")
    private Integer maxStreak;

    @Excel(name = "是否开启每日提醒")
    private Boolean dailyReminderEnabled;

}
